package com.iot.device.domain;

import com.iot.common.annotation.Excel;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.iot.common.core.domain.BaseEntity;

/**
 * 压力传感器设备对象 t_pressure_sensor_client
 *
 * @author iot
 * @date 2023-06-30
 */
public class PressureSensorClient extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 设备状态 */
    @Excel(name = "设备状态", readConverterExp = "online=在线,offline=离线")
    private String clientStat;

    public String getClientStat() {
        return clientStat;
    }

    public void setClientStat(String clientStat) {
        this.clientStat = clientStat;
    }

    /**  */
    private Long id;

    /** 设备唯一标识码 组成：厂家编码+设备类型ID+设备号 */
    @Excel(name = "设备唯一标识码")
    private String sn;

    /** 设备名称 */
    @Excel(name = "设备名称")
    private String deviceName;

    /** 系统标识 */
    @Excel(name = "系统标识")
    private String sysId;

    /** 设备类型 */
    @Excel(name = "设备类型")
    private String deviceTypeId;

    /** 厂家编码 */
    @Excel(name = "厂家编码")
    private String pkey;

    /** 设备厂内安装身份Id */
    @Excel(name = "设备厂内安装身份Id")
    private String factoryId;

    /** 移动设备标识码 组成：系统标识码+设备唯一标识码 */
    @Excel(name = "移动设备标识码")
    private String meid;

    /** 设备类型 */
    @Excel(name = "设备类型")
    private String devtype;

    /** 软件版本号 */
    @Excel(name = "软件版本号")
    private String sver;

    /** 硬件版本号 */
    @Excel(name = "硬件版本号")
    private String hver;

    /** 通信方式G:4G;C:cat1;S:有线;N:NB */
    @Excel(name = "通信方式", readConverterExp = "G=4G,C=cat1,S=有线,N=NB")
    private String connType;

    /** 供电方式 0:外部电源 1:电池 2:备电 */
    @Excel(name = "供电方式", readConverterExp = "0=外部电源,1=电池,2=备电")
    private Integer power;

    /** 上报方式 0:定时上报 1:事件上报，可配置 */
    @Excel(name = "上报方式", readConverterExp = "0=定时上报,1=事件上报")
    private Integer mode;

    /** 上报周期 可配置，单位为s */
    @Excel(name = "上报周期(秒)")
    private Long dc;

    /** 设备时间 采用最小范围生效原则，毫秒 */
    @Excel(name = "设备时间（毫秒）")
    private Long ct;

    /** 压力超限报警(0 正常,1 低低限报警,2 低限报警,3 高限报警, 4 高高限报警) */
    @Excel(name = "压力超限报警", readConverterExp = "0=正常,1=低低限报警,2=低限报警,3=高限报警,4=高高限报警")
    private Integer alarm;

    /** 低压是否报警 */
    @Excel(name = "低压是否报警", readConverterExp = "true=是,false=否")
    private Boolean lowAlarm;

    /** 信号强度 */
    @Excel(name = "信号强度")
    private String signalStrength;

    /** 经度 */
    @Excel(name = "经度")
    private Double longitude;

    /** 纬度 */
    @Excel(name = "纬度")
    private Double latitude;

    /** 所在地址 */
    @Excel(name = "所在地址")
    private String address;

    /** 归属单位 */
    @Excel(name = "归属单位")
    private Long deptId;

    /** 管理人id */
    @Excel(name = "管理人id")
    private Long userId;

    /** 报警设备编号 */
    @Excel(name = "报警设备编号")
    private Long alarmDeviceNo;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setSn(String sn)
    {
        this.sn = sn;
    }

    public String getSn()
    {
        return sn;
    }
    public void setDeviceName(String deviceName)
    {
        this.deviceName = deviceName;
    }

    public String getDeviceName()
    {
        return deviceName;
    }
    public void setSysId(String sysId)
    {
        this.sysId = sysId;
    }

    public String getSysId()
    {
        return sysId;
    }
    public void setDeviceTypeId(String deviceTypeId)
    {
        this.deviceTypeId = deviceTypeId;
    }

    public String getDeviceTypeId()
    {
        return deviceTypeId;
    }
    public void setPkey(String pkey)
    {
        this.pkey = pkey;
    }

    public String getPkey()
    {
        return pkey;
    }

    public String getFactoryId() {
        return factoryId;
    }

    public void setFactoryId(String factoryId) {
        this.factoryId = factoryId;
    }

    public void setMeid(String meid)
    {
        this.meid = meid;
    }

    public String getMeid()
    {
        return meid;
    }
    public void setDevtype(String devtype)
    {
        this.devtype = devtype;
    }

    public String getDevtype()
    {
        return devtype;
    }
    public void setSver(String sver)
    {
        this.sver = sver;
    }

    public String getSver()
    {
        return sver;
    }
    public void setHver(String hver)
    {
        this.hver = hver;
    }

    public String getHver()
    {
        return hver;
    }
    public void setConnType(String connType)
    {
        this.connType = connType;
    }

    public String getConnType()
    {
        return connType;
    }
    public void setPower(Integer power)
    {
        this.power = power;
    }

    public Integer getPower()
    {
        return power;
    }
    public void setMode(Integer mode)
    {
        this.mode = mode;
    }

    public Integer getMode()
    {
        return mode;
    }
    public void setDc(Long dc)
    {
        this.dc = dc;
    }

    public Long getDc()
    {
        return dc;
    }
    public void setCt(Long ct)
    {
        this.ct = ct;
    }

    public Long getCt()
    {
        return ct;
    }
    public void setAlarm(Integer alarm)
    {
        this.alarm = alarm;
    }

    public Integer getAlarm()
    {
        return alarm;
    }

    public Boolean getLowAlarm() {
        return lowAlarm;
    }

    public void setLowAlarm(Boolean lowAlarm) {
        this.lowAlarm = lowAlarm;
    }

    public String getSignalStrength() {
        return signalStrength;
    }

    public void setSignalStrength(String signalStrength) {
        this.signalStrength = signalStrength;
    }

    public void setLongitude(Double longitude)
    {
        this.longitude = longitude;
    }

    public Double getLongitude()
    {
        return longitude;
    }
    public void setLatitude(Double latitude)
    {
        this.latitude = latitude;
    }

    public Double getLatitude()
    {
        return latitude;
    }
    public void setAddress(String address)
    {
        this.address = address;
    }

    public String getAddress()
    {
        return address;
    }
    public void setDeptId(Long deptId)
    {
        this.deptId = deptId;
    }

    public Long getDeptId()
    {
        return deptId;
    }
    public void setUserId(Long userId)
    {
        this.userId = userId;
    }

    public Long getUserId()
    {
        return userId;
    }

    public Long getAlarmDeviceNo() {
        return alarmDeviceNo;
    }

    public void setAlarmDeviceNo(Long alarmDeviceNo) {
        this.alarmDeviceNo = alarmDeviceNo;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("sn", getSn())
                .append("deviceName", getDeviceName())
                .append("sysId", getSysId())
                .append("deviceTypeId", getDeviceTypeId())
                .append("pkey", getPkey())
                .append("meid", getMeid())
                .append("devtype", getDevtype())
                .append("sver", getSver())
                .append("hver", getHver())
                .append("connType", getConnType())
                .append("power", getPower())
                .append("mode", getMode())
                .append("dc", getDc())
                .append("ct", getCt())
                .append("alarm", getAlarm())
                .append("signalStrength", getSignalStrength())
                .append("longitude", getLongitude())
                .append("latitude", getLatitude())
                .append("address", getAddress())
                .append("deptId", getDeptId())
                .append("userId", getUserId())
                .append("alarmDeviceNo", getAlarmDeviceNo())
                .append("createTime", getCreateTime())
                .append("createBy", getCreateBy())
                .append("updateTime", getUpdateTime())
                .append("updateBy", getUpdateBy())
                .toString();
    }
}
